typedef unsigned long long u64;
// static const u64 mask = 0xF;
// static char g_buf[1024];
static char ddg_buf[1024];

static char *_utostr(u64 n, char *buf, int base)
{
	int i = 0;
	for (i = 0; n; i++) {
		buf[i] = n % base + '0';
		n = n / base;
	}
	buf[i] = 0;
	puts(buf);
	return buf;
}


static char *utohex(u64 n)
{
	char g_buf[1024];
	return _utostr(n, g_buf, 16);
}

static char *utostr(u64 n)
{
	char g_buf[1024];
	return _utostr(n, g_buf, 10);
}